<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Authenticate extends CI_Controller {
    
    
    function Authenticate(){
        parent::__construct();
        
        $this->load->model('logon/logon_model');
        $this->load->helper('url');
    }
    
    /*
     * Recebe os dados passados pelo formulário e verifica se estão corretos
     * O password do usuário é criptografado para maior segurança.
     */
    public function login(){
        $username = $this->input->post('username');
        $senha = $this->input->post('senha');
        $senha = md5($senha); //criptografa a senha do usuário para comparar no banco
        
        $msg = "falha";
        
        //verifica no model se os dados são válidos
        $user = $this->logon_model->verificar_usuario($username, $senha);
        
        if($user != FALSE){
            //montar os dados da sessão
               $userData = array(
                    "id" => $user->usuario_id,
                    "categoia" =>$user->categoria_usuario,
                    "username" => $user->username,
                    "nome" => $user->nome,
                    "email" => $user->email,
                    "is_admin" => $user->is_admin,
                    "logged_in" => TRUE
               );
               
               //criar a sessão com os dados passados.
               $this->session->set_userdata($userData);
               $msg = "ok";
        }
        //responde ao browser uma mensagem de ok ou falha
        echo json_encode(array('msg' => $msg));
    }

    function logout(){
        $this->session->sess_destroy();
        redirect('index.php/welcome');
    }
    
}
